package demo04;
//替换所有问号
class Solution {
    public String modifyString(String ss) {
        char[] s = ss.toCharArray();

        for(int i = 0;i < s.length;i++){
            if (s[i] == '?') {
                for (char j = 'a'; j <= 'z'; j++) {
                    // 先处理特殊情况，再处理一般情况，避免越界
                    if (s.length == 1) {
                        s[i] = j;
                        break;
                    } else if (i == 0) { // 开头位置，只看右边
                        if (s[i+1] != j) {
                            s[i] = j;
                            break;
                        }
                    } else if (i == s.length - 1) { // 结尾位置，只看左边
                        if (s[i-1] != j) {
                            s[i] = j;
                            break;
                        }
                    } else { // 中间位置，看左右
                        if (s[i-1] != j && s[i+1] != j) {
                            s[i] = j;
                            break;
                        }
                    }
                }
            }
        }
        return String.valueOf(s);
    }
}